package com.example.design.proxy.cglib;

/**
 * CGLIB创建的动态代理对象比JDK创建的动态代理对象的性能更高，但是CGLIB创建代理对象时所花费的时间却比JDK多得多。
 * 所以对于单例的对象，因为无需频繁创建对象，用CGLIB合适，反之使用JDK方式要更为合适一些。
 * 同时由于CGLib由于是采用动态创建子类的方法，对于final/static修饰的方法无法进行代理。
 */
public class ClientCglib {
    /**
     * TODO 由于导入的依赖有问题，所以此处演示异常，待解决
     * @param args
     */
    public static void main(String[] args) {
        //创建目标对象
        Teacher target = new Teacher();
        //获取到代理对象，并且将目标对象传递给代理对象
        //Teacher instance = (Teacher)new ProxyFactory(target).getProxyInstanct();
        //执行代理方法
        //instance.teach();
    }
}
